The present invention generally relates to a system and a method for transferring data. More specifically, the present invention relates to a system and a method for transferring data from a first terminal to a second terminal. The data may be transferred from the first terminal to the second terminal after a connection between the first terminal and the second terminal may be established. The first terminal may transfer and/or may transmit the data in a first codec to the second terminal without an exchange of capabilities and/or intents of the first terminal and the second terminal. The capabilities of the second terminal may not support, may not process and/or may not accept the data in the first codec. The exchange of capabilities and/or intents of the first terminal and the second terminal may be transferred and/or may be transmitted between the first terminal and the second terminal.
The first terminal may transfer and/or may transmit the data in a second codec to the second terminal based upon the exchange of capabilities and intents of the first terminal and/or the second terminal. The data in the second codec which may be supported, may be processed, may be accepted and/or may be displayed by the second terminal. As a result, the system and the method may establish a call setup between the first terminal and the second terminal to transfer data in a first codec and/or a second codec.
It is generally known, for example, that mobile devices, such as, for example, a first terminal and a second terminal may conduct a video conference to communicate and/or to transmit multimedia or other data between the first terminal and the second terminal via 3G-324M standard protocol. Such data may consist of audio, video, and/or other data types. Traditionally, the 3G-324M protocol enabled mobile device, may be, for example, a 3G mobile telephone, personal digital assistant (hereinafter “PDA”), laptop computer and/or the like. The first terminal may transmit data in one or more of several possible codec formats to a second terminal during the video conference. Prior to transmitting the data from the first terminal to the second terminal, a first message must be exchanged between the first terminal and the second terminal. The first message is a terminal capability set (hereinafter “TCS”) message which is sent from the second terminal to the first terminal. The TCS message identifies a version of a control protocol, such as, for example, H.245 which is used by the second terminal and/or capabilities of the second terminal. The first terminal determines the version of the control protocol and/or the capabilities of the second terminal from the TCS message. As a result, the first terminal determines which codec or codecs to use when transmitting data to the second terminal.
A second message must also be exchanged between the first terminal and the second terminal prior to the transmission of the data from the first terminal to the second terminal. The second message may be a master/slave determination (hereinafter “MSD”) message which is transmitted from the second terminal to the first terminal. Information from this second message may be used as part of the subsequent channel negotiation to determine which codec or codecs will be used to transmit data from the first terminal to the second terminal. A transmission channel, such as, for example, an open logical channel (hereinafter “OLC”) is established between the first terminal and the second terminal after the first terminal receives and/or processes the first message and the second message. As a result, the data in the first codec or in the second codec may be transmitted from the first terminal to the second terminal via the transmission channel using codecs which are acceptable to the second terminal.
However, the first terminal will not transmit the data to the second terminal without receiving the first message and the second message from the second terminal. Still further, the transmission channel between the first terminal and the second terminal will not be established until the first terminal receives, accepts and/or processes the first message and the second message from the second terminal. Moreover, a duration of a setup time to complete transmission of the data from the first terminal to the second terminal is extended by and/or based on durations of times for transmitting the first message and the second message from the second terminal to the first terminal and/or for negotiating and establishing specific transmission channels between the first terminal and the second terminal. The initial exchange of capabilities and intents used commonly in such terminals may result in a lengthy call setup period before multimedia and other valuable data may be exchanged.
It may be possible to compress the capabilities, preferences and intents of terminals 12a and 12b such that they are exchanged between terminals 12a and 12b in a single message or in a series of pipelined messages which do not require interaction or acknowledgment from the remote side. In such a case, the duration of time before media may be exchanged between terminals 12a and 12b will depend on the time required to convey such messages between the terminals. Such messages are typically delivered in a reliable fashion, and so any adverse channel conditions or channel errors may extend the delivery time and so result in a lengthy delay before multimedia or other valuable data may be exchanged.
A need, therefore, exists for a system and a method for transmitting data from the first terminal to the second terminal without waiting for the initial exchange of capabilities and intents. Further, a need exists for a system and a method for transmitting data from the first terminal to the second terminal which minimizes the time expended before such valuable data may be transmitted and received.